export function clickNode(model) {
  console.info('clickNode', model)
}
export function clickLink(model) {
  console.info('clickLink', model)
}

export const propsTable = [
  {
    name: 'data',
    desc: '树形数据，id、children、text、type字段是必须的',
    type: 'Object',
    default: '',
  },
  {
    name: 'limitLen',
    desc: 'default-node与risk-node的text的单行字数限制',
    type: 'number',
    default: '6',
  },
  {
    name: 'nodeVGap',
    desc: '节点原点间垂直距离',
    type: 'number',
    default: '30',
  },
  {
    name: 'nodeHGap',
    desc: '节点原点间水平距离',
    type: 'number',
    default: '30',
  },
  { name: 'nodeWidth', desc: '节点宽度', type: 'number', default: '200' },
  { name: 'defaultZoom', desc: '默认缩放比例', type: 'number', default: '0.7' },
  { name: 'minZoom', desc: '最小缩放比例', type: 'number', default: '0.3' },
  { name: 'maxZoom', desc: '最大缩放比例', type: 'number', default: '2' },
  {
    name: 'mouseZoomable',
    desc: '是否可通过鼠标滚轮缩放',
    type: 'boolean',
    default: 'true',
  },
  {
    name: 'showToolbar',
    desc: '是否显示工具条',
    type: 'boolean',
    default: 'false',
  },
  {
    name: 'backgroundColor',
    desc: '背景色',
    type: 'string',
    default: '#F3F5F7',
  },
]

export const paramTable = [
  { name: 'id', desc: '节点的唯一编号，必须', type: 'string', default: '' },
  { name: 'children', desc: '子节点数组，必须', type: 'Array', default: '' },
  { name: 'text', desc: '主文案，必须', type: 'string', default: '' },
  {
    name: 'collapsed',
    desc: '节点默认的折叠状态',
    type: 'boolean',
    default: '',
  },
  {
    name: 'type',
    desc: '节点类型，必须，不同的类型有不同的效果，可选值（默认节点：default-node | 根节点：root-node |  风险信息：risk-node | 显示全部：more-node）',
    type: 'string',
    default: 'default-node',
  },
  {
    name: 'invested',
    desc: '用于所有节点，被投资比例',
    type: 'string',
    default: '',
  },
  {
    name: 'color',
    desc: '用于default-node、risk-node节点，主文案的颜色',
    type: 'string',
    default: '#27243F',
  },
  {
    name: 'bgColor',
    desc: '用于default-node、risk-node节点，背景色',
    type: 'string',
    default: '#fff',
  },
  {
    name: 'riskStatus',
    desc: '用于risk-node节点，风险状态，可选值（存在风险：exist | 不存在风险：none | 无法判断：null）',
    type: 'string | number',
    default: '',
  },
  {
    name: 'riskNum',
    desc: '用于risk-node节点，风险数量',
    type: 'string',
    default: '',
  },
  {
    name: 'riskNumColor',
    desc: '用于risk-node节点，风险数量的文字颜色',
    type: 'string',
    default: '#2970F6',
  },
  {
    name: 'linkable',
    desc: '用于risk-node节点，是否可以点击riskNum',
    type: 'boolean',
    default: 'true',
  },
  {
    name: 'hiddenChildren',
    desc: '用于more-node节点，被隐藏的子节点，',
    type: 'Array',
    default: '',
  },
]

export const exposeTable = [
  {
    name: 'getGraphInstance',
    desc: '获取graph实例，可用于调用antv的实例方法。另可通过调用getGraphInstance().myInit()重置位移与缩放',
    type: '() => Graph',
  },
]

export const eventTable = [
  {
    name: 'clickLink',
    desc: '点击 risk-node 节点的 linkable 为 true 的 riskNum 时触发',
    type: '(model: Object) => void',
  },
  {
    name: 'clickNode',
    desc: '点击节点时触发，和 clickLink 会同时触发',
    type: '(model: Object) => void',
  },
  {
    name: 'clickToolbar',
    desc: '点击 toolbar 控件项时触发，接收控件类型 type，如 fullScreen（全屏）、normalScreen（还原）、zoomIn（缩小）、zoomOut（放大）',
    type: '(type: string) => void',
  },
]
